package cc.rengu.igas.cops.common.enums;

import cc.rengu.oltp.utility.util.StringUtil;

/**
 * @author Xuegui Cao
 * @date 2020/11/19
 * @description 数据库中没有配置时, 才会使用
 */
public enum CopsToBompDubboServiceEnum {
    /*商户基本信息管理*/T00CP200("COPS", "T00CP200", "M00BM011", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntBaseInfoManageRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"mchntBaseInfoManage\",\"txnNum\":\"M00BM011\",\"description\":\"商户基本信息管理\"}"),
    /*商户签约信息管理*/T00CP201("COPS", "T00CP201", "M00BM012", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntSignInfoManageRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"mchntSignInfoManage\",\"txnNum\":\"M00BM012\",\"description\":\"商户签约信息管理\"}"),
    /*商户结算信息管理*/T00CP202("COPS", "T00CP202", "M00BM013", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntSettleInfoManageRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"mchntSettleInfoManage\",\"txnNum\":\"M00BM013\",\"description\":\"商户结算信息管理\"}"),
    /*商户影像信息管理*/T00CP203("COPS", "T00CP203", "M00BM014", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntImageInfoManageRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"mchntImageInfoManage\",\"txnNum\":\"M00BM014\",\"description\":\"商户影像信息管理\"}"),
    /*商户产品信息管理*/T00CP204("COPS", "T00CP204", "M00BM015", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntProdInfoManageRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"mchntProdInfoManage\",\"txnNum\":\"M00BM015\",\"description\":\"商户产品信息管理\"}"),
    /*图片文件上传下载*/T00CP205("COPS", "T00CP205", "T00BM001", "{\"request\":\"cc.rengu.igas.bomp.facade.request.ImageFileUpDownloadRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"imageFileUpDownload\",\"txnNum\":\"T00BM001\",\"description\":\"图片文件上传下载\"}"),
    /*商户状态变更管理*/T00CP206("COPS", "T00CP206", "M00BM021", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntStatusManageRequest\",\"dubboBean\":\"bompMchntManageService\",\"dubboMethod\":\"mchntStatusManage\",\"txnNum\":\"M00BM021\",\"description\":\"商户状态变更管理\"}"),
    /*商户基本信息查询*/T00CP207("COPS", "T00CP207", "M00BM005", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntBaseInfoQueryRequest\",\"dubboBean\":\"bompMchntQueryService\",\"dubboMethod\":\"mchntBaseInfoQuery\",\"txnNum\":\"M00BM005\",\"description\":\"商户基本信息查询\"}"),
    /*商户签约信息查询*/T00CP208("COPS", "T00CP208", "M00BM006", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntSignInfoQueryRequest\",\"dubboBean\":\"bompMchntQueryService\",\"dubboMethod\":\"mchntSignInfoQuery\",\"txnNum\":\"M00BM006\",\"description\":\"商户签约信息查询\"}"),
    /*商户结算信息查询*/T00CP209("COPS", "T00CP209", "M00BM007", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntSettleInfQueryRequest\",\"dubboBean\":\"bompMchntQueryService\",\"dubboMethod\":\"mchntSettleInfoQuery\",\"txnNum\":\"M00BM007\",\"description\":\"商户结算信息查询\"}"),
    /*商户影像信息查询*/T00CP210("COPS", "T00CP210", "M00BM008", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntImageInfoQueryRequest\",\"dubboBean\":\"bompMchntQueryService\",\"dubboMethod\":\"mchntImageInfoQuery\",\"txnNum\":\"M00BM008\",\"description\":\"商户影像信息查询\"}"),
    /*商户产品列表查询*/T00CP211("COPS", "T00CP211", "M00BM009", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntProdListQueryRequest\",\"dubboBean\":\"bompMchntQueryService\",\"dubboMethod\":\"mchntProdListQuery\",\"txnNum\":\"M00BM009\",\"description\":\"商户产品列表查询\"}"),
    /*商户产品信息查询*/T00CP212("COPS", "T00CP212", "M00BM010", "{\"request\":\"cc.rengu.igas.bomp.facade.request.MchntProdInfoQueryRequest\",\"dubboBean\":\"bompMchntQueryService\",\"dubboMethod\":\"mchntProdInfoQuery\",\"txnNum\":\"M00BM010\",\"description\":\"商户产品信息查询\"}"),
    NULL_ENUM("", "", "", ""),

    ;

    public static CopsToBompDubboServiceEnum getEnumBycopsTxnNum(String copsTxnNum) {
        if (StringUtil.isEmptyOrNull(copsTxnNum)) {
            return NULL_ENUM;
        }
        for (CopsToBompDubboServiceEnum copsToBompDubboServiceEnum : CopsToBompDubboServiceEnum.values()) {
            if (copsToBompDubboServiceEnum.getCopsTxnNum().equals(copsTxnNum)) {
                return copsToBompDubboServiceEnum;
            }
        }
        return NULL_ENUM;
    }

    private String chanlId;//渠道标识

    private String copsTxnNum;//通道交易码

    private String txnNum;//交易类型（交易码）

    private String reflectMsgJsonString;//json对象

    CopsToBompDubboServiceEnum(String chanlId, String copsTxnNum, String txnNum, String reflectMsgJsonString) {
        this.chanlId = chanlId;
        this.copsTxnNum = copsTxnNum;
        this.txnNum = txnNum;
        this.reflectMsgJsonString = reflectMsgJsonString;
    }

    //region get&set

    public String getChanlId() {
        return chanlId;
    }

    public void setChanlId(String chanlId) {
        this.chanlId = chanlId;
    }

    public String getCopsTxnNum() {
        return copsTxnNum;
    }

    public void setCopsTxnNum(String copsTxnNum) {
        this.copsTxnNum = copsTxnNum;
    }

    public String getTxnNum() {
        return txnNum;
    }

    public void setTxnNum(String txnNum) {
        this.txnNum = txnNum;
    }

    public String getReflectMsgJsonString() {
        return reflectMsgJsonString;
    }

    public void setReflectMsgJsonString(String reflectMsgJsonString) {
        this.reflectMsgJsonString = reflectMsgJsonString;
    }


    //endregion

}
